package com.zcxy.sys.service;


import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zcxy.core.bean.PageQuery;
import com.zcxy.sys.entity.VerificationCode;
import com.zcxy.sys.pojo.VerificationCodeVo;

import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;


/**
 * 邮箱验证码表 Service接口
 *
 * @author zcc
 * @email 860474958@qq.com
 * @date 2020-06-08
 */
public interface IVerificationCodeService extends IService<VerificationCode> {
    /**
     * 邮箱验证码表：分页查询
     *
     * PageQuery<T>
     * @return Result<IPage < VerificationCodeVo>>
     */
    IPage<VerificationCodeVo> queryPageList(PageQuery<VerificationCode> queryVo);

    /**
     * 邮箱验证码表：复杂列表查询
     *
     * VerificationCode
     * @return List<VerificationCodeVo>
     */
    List<VerificationCodeVo> queryList(VerificationCode verificationCode);

    /**
     * 邮箱验证码表：新增
     *
     * VerificationCode
     * @return void
     */
    void addVerificationCode(VerificationCode queryVo);

    /**
     * 邮箱验证码表:更新
     *
     * VerificationCode
     * @return void
     */
    void updateVerificationCode(VerificationCode queryVo);

    /**
     * 邮箱验证码表:删除
     *
     * VerificationCode
     * @return void
     */
    void removeVerificationCode(String id);


    /**
     * 邮箱验证码表:删除
     *
     * @return void
     */
    void removeAllVerificationCode(List<String> ids);


    void download(VerificationCode queryVo, HttpServletResponse response) throws IOException;


}
